iT邦幫忙

2024 iThome 鐵人賽

DAY 22
0
佛心分享-IT 人自學之術

從零開始的MySQL開發旅程系列 第 22

Day22 Cloud Firestore 基礎用法

  • 分享至 

  • xImage
  •  
  • 寫入資料
    • 設定 set()
      • 用來設定資料夾中內容,創建或覆蓋文件(document)
      • 當文件不存在時系統會自動創建一個新的文件(以亂碼作為文件名稱),如果文件在的話則會直接備新的資料覆蓋
      • 如不希望資料被覆蓋,使用merge的方法來進行合併處裡。用法是在set的參數後方,新增{merge:true}
    • 更新update()
      • 指定文件中某一屬性來更新,不會整個覆蓋掉文件
    • 添加 add()
      • 針對集合collection,而不是文件doc
      • 可以自動添加文件,並以亂碼來做文件名稱(與set()寫法類似)
    • 刪除 delete()
      • 用於刪除集合或是文件
      • 要注意如果集合中有文件,是沒辦法刪除集合的
      • 如果不想刪整個文件,需要透過update的方式,也就是說刪除delete()寫在update()括號中
  • 讀取資料
    • 一次性讀取 get()
      • 可以取得某個集合裡,所有文件的資料
      • 如果get的對象為集合collection,可以用forEach()來取得文件中的每一筆資料
    • 即時監聽變化 onSnapshot()
      • 只要有變化就會立刻傳送指定的資料給使用者
      • 如果get的對象為集合collection,可以用forEach()來取得文件中的每一筆資料
  • 處理資料
    • 排序 orderBy
      • 通常會和limit搭配,作為排序後篩選特定數量的資料
      • 須包含兩個參數,第一個是要進行排序的屬性名稱,第二個是遞增 (asc) 或遞減 (desc)
    • 篩選 where
      • 用來進行第一步的資料篩選
      • 須包含三個參數,第一個是屬性、第二個是邏輯運算子 (大於、小於等)、第三個是參數
      • 會寫在get或onSnapshot的前方

補充:

  1. 邏輯運算子為==時可以篩選不同的屬性。
  2. <=、>=、>、<之類的邏輯運算子,則只能針對單一屬性,例如皆是數字

下一章:Firebase Security Rules 安全規則


上一篇
Day21 Cloud Firestore
下一篇
Day23 Firebase Security Rules 安全規則
系列文
從零開始的MySQL開發旅程30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言